//this is a module that can generate P0
//Last modified by yangjao at 2021/5/12

module P0_generator(
    input wire[31:0] data_in,
    output wire[31:0] data_out
);

assign data_out = data_in ^ ((data_in << 9) | (data_in >> 23)) ^ ((data_in << 17) | (data_in >> 15));

endmodule